// 自定义的拦截器类
import { Injectable, NestInterceptor, ExecutionContext, CallHandler } from '@nestjs/common';
import { Observable } from 'rxjs';
import { map } from 'rxjs/operators';
import logger from '../log/logger';
@Injectable()
export class IpcInterceptor implements NestInterceptor {
  intercept(_context: ExecutionContext, next: CallHandler): Observable<any> {
    // const request = context.switchToRpc().getData();
    // 在发送请求之前，可以在这里进行一些前置处理（如果需要）
    return next.handle().pipe(
      map(result => {
        // 统一输出结果
				if(result.code === 200){
					// logger.info('IpcInterceptor--------200---------begin')
					// logger.info(result)
					// logger.info('IpcInterceptor---------200--------end')
				}else{
					logger.info('IpcInterceptor--------error---------begin')
					logger.error(result)
					logger.info('IpcInterceptor---------error--------end')
				}
				return result
      }),
    );
  }
}
